# regular xm created VBDs
VBD_attr_ro = ['image',
- 'IO_bandwidth_incoming_kbs',
- 'IO_bandwidth_outgoing_kbs']
+ 'io_read_kbs',
+ 'io_write_kbs']
VBD_attr_rw = ['VM',
'VDI',
'device',
# Xen API: Class VIF
# ----------------------------------------------------------------
- VIF_attr_ro = ['network_read_kbs',
- 'network_write_kbs',
- 'IO_bandwidth_incoming_kbs',
- 'IO_bandwidth_outgoing_kbs']
+ VIF_attr_ro = ['io_read_kbs',
+ 'io_write_kbs']
VIF_attr_rw = ['name',
'type',
'device',
return xen_api_error(XEND_ERROR_VIF_INVALID)
valid_vif_keys = self.VIF_attr_ro + self.VIF_attr_rw + \
self.Base_attr_ro + self.Base_attr_rw
+
for k in cfg.keys():
if k not in valid_vif_keys:
del cfg[k]
if dev_type == 'vif' and 'ip' in dev_info:
dev_info['ip'] = _get_config_ipaddr(config)
- log.debug('XendConfig: IP Address: %s' % dev_info['ip'])
if dev_type == 'vbd':
if dev_info.get('dev', '').startswith('ioemu:'):
param = '%s_refs' % dev_type
if param not in target:
target[param] = []
- if dev_uuid in target[param]:
+ if dev_uuid not in target[param]:
target[param].append(dev_uuid)
elif dev_type in ('tap',):
if 'vbd_refs' not in target:
target['vbd_refs'] = []
- if dev_uuid in target['vbd_refs']:
+ if dev_uuid not in target['vbd_refs']:
target['vbd_refs'].append(dev_uuid)
return dev_uuid
return dom_uuid
def get_memory_static_max(self):
- return self.info.get('memory_static_max')
+ return self.info.get('memory_static_max', 0)
def get_memory_static_min(self):
- return self.info.get('memory_static_min')
+ return self.info.get('memory_static_min', 0)
def get_memory_dynamic_max(self):
- return self.info.get('memory_dynamic_min')
+ return self.info.get('memory_dynamic_min', 0)
def get_memory_dynamic_min(self):
- return self.info.get('memory_dynamic_max')
+ return self.info.get('memory_dynamic_max', 0)
def get_vcpus_policy(self):
def get_builder(self):
return self.info.get('builder', 0)
def get_boot_method(self):
- return self.info.get('boot_method', '')
+ return self.info.get('boot_method', XEN_API_BOOT_TYPE[2])
def get_kernel_image(self):
return self.info.get('kernel_kernel', '')
def get_kernel_initrd(self):
def get_grub_cmdline(self):
return '' # TODO
def get_pci_bus(self):
- return 0 # TODO
+ return '' # TODO
def get_tools_version(self):
return {} # TODO
def get_other_config(self):
config['network'] = '' # Invalid for Xend
config['MTU'] = 1500 # TODO
- config['network_read_kbs'] = 0.0
- config['network_write_kbs'] = 0.0
- config['IO_bandwidth_incoming_kbs'] = 0.0
- config['IO_bandwidth_outgoing_kbs'] = 0.0
+ config['io_read_kbs'] = 0.0
+ config['io_write_kbs'] = 0.0
if dev_class == 'vbd':
- config['VDI'] = '' # TODO
+ config['VDI'] = config.get('VDI', '')
config['device'] = config.get('dev', '')
config['driver'] = 'paravirtualised' # TODO
config['image'] = config.get('uname', '')
- config['IO_bandwidth_incoming_kbs'] = 0.0
- config['IO_bandwidth_outgoing_kbs'] = 0.0
+ config['io_read_kbs'] = 0.0
+ config['io_write_kbs'] = 0.0
if config['mode'] == 'r':
config['mode'] = 'RO'
else:
return dev_uuid
def has_device(self, dev_class, dev_uuid):
- return (dev_uuid in self.info['%s_refs' % dev_class])
-
- """
- def stateChar(name):
- if name in self.info:
- if self.info[name]:
- return name[0]
- else:
- return '-'
- else:
- return '?'
-
- state = reduce(lambda x, y: x + y, map(stateChar, DOM_STATES_OLD))
-
- sxpr.append(['state', state])
-
- if self.store_mfn:
- sxpr.append(['store_mfn', self.store_mfn])
- if self.console_mfn:
- sxpr.append(['console_mfn', self.console_mfn])
- """
+ return (dev_uuid in self.info['%s_refs' % dev_class.lower()])
def __str__(self):
return '<domain id=%s name=%s memory=%s state=%s>' % \